Method and apparatus for providing enhanced functionality to product webpages

ABSTRACT

A method and apparatus for providing enhanced functionality to product webpages is described. This method and apparatus may be used to provide a unified toolbar across product webpages of multiple, independent retailers. This toolbar may be used to create a gift registry across multiple retailers, to create an inter-retailer shopping cart and automate purchases, to create an inter-retailer advertising network, and to create a virtual network of retailers with a multitude of services spanning them.

BACKGROUND OF THE INVENTION

[0001] 1. Field of the Invention

[0002] The present invention relates to a method and apparatus forproviding enhanced functionality to webpages. More particularly, thepresent invention relates to a method and apparatus for providing aunified gift registry which allows user to register and purchase giftsfrom multiple retailers.

[0003] 2. Description of Related Art

[0004] Gift registries are often created for special occasions such asweddings. Gift-recipients visit a retailer to select and register a listof desired gifts. Gift-givers then visit the retailer to select andpurchase a gift from this list. The gift is then marked as purchased andtherefore no longer available for purchase by a subsequent gift-giver.

[0005] Gift registries are typically separately maintained at each storeand are particular to each store. This requires both gift-recipients andgift-givers to visit the same store. Gift registries are oftenmaintained on a single non-networked computer within the individualstore to automate the bookkeeping functions.

[0006] Gift registries may also be implemented on a computer network,which provides improved access to other stores of the same retailer aswell as gift-givers. For example, a private network between storesassociated with the same retailer allows gift-recipients and gift-giversto visit any store which is part of the network to register or purchasegifts. As another example, a publicly accessible network such as theInternet allows gift-recipients and gift-givers to register and purchasegifts from a computer with Internet access. Such networked giftregistries are currently provided by numerous individual retailers.

[0007] However, these networked gift registries are particular to eachretailer and are designed to work only with stores of the same retailer,and are limited to products available in the stores of the sameretailer.

[0008] Currently, gift-recipients wishing to register gifts from morethan one retailer must visit each retailer, create a new registryaccount, and go through the oftentimes laborious process of selectingand registering gifts to be placed on their registry. This process mustbe repeated for every retailer involved, each process varying in numberof steps and degree of difficulty. Gift-givers wishing to purchase theseregistered gifts must determine which stores to shop at, look up eachregistry, and purchase the gift through the supplying retailer. Both thegift-recipient and the gift-giver are inconvenienced by a narrowerproduct selection, store location, inability to reconcile registry listsacross multiple retailers, and the degree of effort required.

[0009] Furthermore, gift registry services offered by just one retaileroften contain erroneous listings, untimely updates of product selectionand purchase status, and may lead to duplicate gift purchases.

[0010] Current gift registry solutions require the retailer to offertheir own registry services for their own product selection. However, itis difficult for many retailers to to carry a sufficient number ofproducts to provide the product selection consumers often desire.

[0011] What is needed is a single gift registry service that iscompatible with more than one retailer. What is needed is a giftregistry solution which allows a gift-recipient to visit a singlelocation and create a gift registry which includes products from morethan one retailer. What is also needed is a gift registry solution whichallows a gift-giver to visit a single location and access a giftregistry which includes products from more than one retailer.

SUMMARY OF THE INVENTION

[0012] The present invention is directed towards a computer implementedmethod for providing enhanced functionality to product webpages. Oneembodiment of the method comprises: receiving a request for a productwebpage from a user, the product webpage being associated with a productand an independent vendor; retrieving the product webpage from anindependent source; extracting a location and structural informationassociated with the product webpage; modifying the product webpage toprovide a toolbar, the toolbar having at least one command associatedwith the product; and presenting the modified product webpage to theuser.

BRIEF DESCRIPTION OF THE DRAWINGS

[0013]FIG. 1A shows a typical network in which the method of the presentinvention may be practiced.

[0014]FIGS. 1B-1C show embodiments of toolbars which may be provided bythe method and apparatus of the present invention.

[0015]FIG. 2 shows one embodiment of a method of the present inventionfor providing enhanced functionality to product webpages.

DETAILED DESCRIPTION OF THE INVENTION

[0016] The present invention provides a method and apparatus forproviding enhanced functionality to webpages.

[0017]FIG. 1A shows a typical network in which the method and apparatusof the present invention may be practiced. An enhanced functionalityserver 100 is connected through a wide area network 10 to client devices120, each of which includes a browser. Enhanced functionality server 100is also connected through wide area network 110 to a plurality ofindependent sources 130.

[0018] Enhanced functionality server 100 may be a more than one server.Wide area network 110 may be the Internet, a virtual private network, orother network. Client devices 120 may be a computer, a personal digitalassistant, or other suitable networkable device. Independent sources 130may be webpage servers associated with independent retailers or vendors.

[0019] A user uses client device 120 to connect to wide area network 110and access enhanced functionality server 100. Once connected to enhancedfunctionality server 110, the user may use the browser to accessindependent sources 130 just as normal. However, enhanced functionalityserver 100 intercepts the transmissions between client device 120 andindependent sources 130 and is capable of adding tools and services tothese transmissions. Enhanced functionality server 100 thus behavessimilar to a proxy server, but provides enhanced functionality. Enhancedfunctionality server 100 is capable of “following” the user andrecording user behavior as the user access independent sources.

[0020]FIGS. 1B and 1C show enhanced functionality toolbars. Enhancedfunctionality server 100 is capable of providing a toolbar 150 whichlooks and behaves the same regardless of which independent source 130the user happens to be visiting. For example, toolbar 150 may provideservices such as “Purchase this product” or “Register this product”.Enhanced functionality server 100 is also capable of collecting andstoring information specific to a user in order to facilitate completionof these services. For example, enhanced functionality server 100 mayprompt the user for name, address, and credit card information, and thenautomatically fill out order forms on an order page to fulfill a“Purchase this product” request.

[0021]FIG. 2 shows one embodiment of a method of the present inventionfor providing enhanced functionality to product webpages. The methodincludes: (1) receiving a request for a product webpage from a user, theproduct webpage being associated with a product and an independentvendor (block 210); (2) retrieving the product webpage from anindependent source (block 220); (3) extracting a location and structuralinformation associated with the product webpage (block 230); (4)modifying the product webpage to provide a toolbar, the toolbar havingat least one command associated with the product (block 240); and (5)presenting the modified product webpage to the user (block 250).

[0022] Receiving a request for a product webpage from a user, theproduct webpage being associated with a product and an independentvendor (block 210). In one embodiment, enhanced functionality server 100receives a request for a product webpage, although this request may alsobe processed by browser on client device 120. In an Internetenvironment, this request would be in the form of a URL request. Theproduct webpage may be associated with any product and vendor. Thevendor may be independent of enhanced functionality server 100, andadministers its website and server independently of enhancedfunctionality server 100.

[0023] Retrieving the product webpage from an independent source (block220). In an Internet environment, enhanced functionality server 100sends the URL request and obtains the HTML form of the product webpage.Again, the product webpage may reside on a server which is administeredseparately and indepedently of enhanced functionality server 100.

[0024] Extracting a location and structural information associated withthe product webpage (block 230) may include: (1) parsing the productwebpage into webpage elements (block 232); (2) analyzing the webpageelements to identify location and structural information (block 234);and (3) storing the location and structural information (block 236). Theproduct webpage may be written in a markup language such as HTML, inwhich case extracting may include: (1) parsing the product webpageaccording to HTML tags; (2) analyzing the HTML tags and accompanyingtext to identify URL and frameset information, and (3) storing the URLand frameset information.

[0025] Modifying the product webpage to provide a toolbar, the toolbarhaving at least one command associated with the product (block 240).Toolbar 150 provides enhanced functionality, such as services “Purchasethis product” or “Register this product.” Toolbar 150 may also provideother general functions such as “Home” and “Help”. Toolbar 150 may alsoinclude a graphical presentation such as an advertisement. Toolbar 150may be provided in a space inserted at a top, bottom, side, or anydesired location in the product webpage. Toolbar 150 may actually be apart of the webpage, or provided in a separate frame or floating window.If the product webpage is written in HTML, toolbar 150 may be insertedafter the <BODY> marker of the webpage, or after any other suitablemarker. The toolbox window may also be configured to be always visible,allowing the user to select options from the toolbox window at any time.Toolbar 150 may be tailored specifically for the product webpage, if theproduct webpage is identified first by comparing its webpage elements toa database of known webpages, or toolbar 150 may be generic. Toolbar 150may also include sponsored presentations such as advertising banners.

[0026] The method may further include: (6) obtaining information aboutthe user (block 260); and (7) storing the information about the user inan account associated with the user (block 270).

[0027] Obtaining information about the user (block 260) may includeobtaining any one or more of a name, address, phone number, credit cardand payment information, personal preferences, and demographicinformation about the user. Storing the information about the user in anaccount associated with the user (block 270) may include accessing aexisting account or creating a new account, and storing the informationin this account. This user information may be used to facilitate futuretransactions such as purchasing the product. This user information mayalso be used to help select advertisements specifically targeted to theuser.

[0028] The method may further include: (8) receiving a productregistration command associated with the product from the user (block280); (9) adding the product to a list of products in the accountassociated with the user (block 290); and (10) adding a location andstructural information associated with the product webpage in theaccount associated with the user (block 2100). These three steps mayalso be performed before any personal information about the user isobtained.

[0029] The method may further include: (11) obtaining information abouta purchaser (block 2110); (12) receiving a purchase command associatedwith the product from the purchaser (block 2120); (13) modifying thepurchase command with the information about the purchaser (block 2130);and (14) sending the modified purchase command to the vendor (block2140).

[0030] Enhanced functionality server 100 may include a database ofvendor webpages which includes information about the purchase forms.When a purchase command is received, enhanced functionality server 100is capable of automatically filling out the purchase forms usinginformation obtained earlier about the purchaser. The purchasetransaction is thus facilitated by enhanced functionality server 100.

[0031] Another alternate embodiment of a method for providing enhancedfunctionality to product webpages comprises: receiving a request for aproduct webpage from a user, the product webpage being associated with aproduct and an independent vendor; retrieving the product webpage froman independent source associated with the vendor; extracting a locationand structural information associated with the product webpage;modifying the product webpage to provide a toolbar, the toolbar havingat least one command associated with the product; presenting themodified product webpage to the user; receiving a subsequent request forthe product webpage; presenting the product webpage using the locationand the structural information associated with the product webpage;presenting the product webpage to the user.

[0032] Yet another alternate embodiment of a method for providingenhanced functionality to product webpages comprises: presenting a listof vendor webpages to a user, the vendor webpages being associated witha plurality of vendors; receiving a request for a particular vendorwebpage from the user, the particular vendor webpage being associatedwith a particular vendor; presenting a list of product webpages to theuser, the product webpages being associated with a plurality ofproducts, the plurality of products being associated with the particularvendor; receiving a request for a particular product webpage, theparticular product webpage being associated with a particular product;retrieving the particular product webpage; obtaining a location andstructural information associated with the particular product webpage;modifying the particular product webpage to provide a toolbar, thetoolbar having at least one command associated with the particularproduct; presenting the modified particular product webpage to the user;receiving the command associated with the particular product from theuser; and storing information about the particular product in a list ofproducts associated with the user.

EXAMPLE 1

[0033] This example describes how the method of the present inventionmay be used to allow a gift-recipient to create a gift registry such asa bridal registry. The gift-recipient is able to select and registergifts from multiple retailers, not just from a single store or chain ofretailers.

[0034] Although this example uses the Internet, the present inventionneed not be implemented only within the context of the Internet, but maybe implemented within any computer network. An Internet implementationallows both the gift-recipient and gift-buyer convenient access theregistry and convenient fulfillment of requested transactions.

[0035] A gift-recipient accesses enhanced functionality server 100 andthen browses vendor and product webpages normally. Enhancedfunctionality server 100 may present a list of retailers. The list ofretailers may be a suggested or preferred list of retailers, or preparedin response to the gift-recipient's previous selections. However, thegift-recipient is also able to shop at unlisted retailers, the suppliedlist provided only for the gift-recipient's convenience. Thegift-recipient selects a link to the retailer website of their choice byclicking on the appropriate listing as displayed on their browser.Enhanced functionality server 100 “follows” the gift-recipient andstores information about the webpages the gift-recipient has visited.The gift-recipient may request any particular product webpage.

[0036] 1. Receiving a request for a product webpage from a user, theproduct webpage being associated with a product and an independentvendor.

[0037] Enhanced functionality server 100 receives the requests forproduct webpages as the gift-recipient is browsing.

[0038] 2. Retrieving the product webpage from an independent source.

[0039] 3. Extracting a location and structural information associatedwith the product webpage.

[0040] The product webpage is parsed into its webpage elements andanalyzed. Its URL and frameset information is extracted and stored. Thisallows the product webpage to be reconstructed when it is subsequentlyrequested by a gift-giver.

[0041] 4. Modifying the product webpage to provide a toolbar, thetoolbar having at least one command associated with the product.

[0042] A toolbox is inserted at the top of the webpage, after the <BODY>marker. The toolbox includes a “Register this gift” and “Purchase thisgift” buttons. Elements in the HTML code are analyzed and adjusted inpreparation to be re-served from enhanced functionality server 100.References to resources on a retailer's website are adjusted so that theresulting HTML code can be served from enhanced functionality server 100with no broken references.

[0043] 5. Presenting the modified product webpage to the user.

[0044] After the toolbar is provided, the product webpage earlierrequested by the gift-recipient is presented to the gift-recipient.

[0045] 6. Receiving a product registration command associated with theproduct from the user.

[0046] The gift-recipient may continue browsing product webpages until adesired gift is reached. At this point, the gift-recipient may selectthe “Register this gift” button provided by toolbar 150.

[0047] 7. Adding the product to a list of products in the accountassociated with the user. Sufficient information about the retailer andproduct are gathered and stored in an account created for thegift-recipient to enable the product to be purchased at a later date.

[0048] 8. Adding a location and structural information associated withthe product webpage in the account associated with the user.

[0049] The URL and frameset structure of the product webpage is storedin the account.

[0050] 9. Obtaining information about the user.

[0051] For a new gift-recipient, enhanced functionality server 100 maypresent the gift-recipient with a series of forms to be filled out inorder to obtain personal information including name, address, phonenumber, occasion date, occasion name, special requests such as productcolors or product sizes, and other personal attributes.

[0052] 10. Storing the information about the user in an accountassociated with the user.

[0053] The information about the gift-recipient is added to the the giftbeing registered and the URL and frameset structure of the gift'swebpage in the gift-recipient's account. The account may be kept privatewith an identification and password authentication scheme. At thecompletion of registering the gift, the user may be redirected back tothe original product webpage where the user first selected “Registerthis gift” from the toolbox.

[0054] 11. Obtaining information about a purchaser.

[0055] A gift-giver accesses the gift-recipient's gift registry byaccessing enhanced functionality server 100. Enhanced functionalityserver 100 may use a series of question and answer forms to obtaininformation about the gift-giver, such as name and credit cardinformation, and to make sure the gift-giver accesses the propergift-recipient's gift registry. Having positively identified andsupplied the correct authentication, the gift-giver may be presentedwith a series of screens, the total of which displays thegift-recipient's list of registered gifts. The gift-recipient's accountis displayed, along with a registry list which is a list of links, onefor each gift registered by the gift-recipient. Products are listed bytitle offering the gift-giver a way to review each registered gift. Eachlisting also displays the gift's purchase status (reserved oravailable), and offers the gift-giver the option to view more details onthe gift and to purchase the gift. The gift-giver may freely browse theproduct webpages, which are modified to include toolbar 150 in the sameway as when the gift-recipient had browsed the product webpages. To dothis, information about the selected gift, and its URL and framesetstructure is retrieved from where it was stored earlier.

[0056] 12. Receiving a purchase command associated with the product fromthe purchaser.

[0057] Having reviewed a particular gift, and chosen to purchase it, thegift-giver may select the “Purchase this gift” option from the toolbar.Additional information may be obtained from the gift-giver such as thequantity being purchased.

[0058] 13. Modifying the purchase command with the information about thepurchaser. The information obtained earlier about the gift-giver is usedto automatically fill out the necessary forms on the vendor's website topurchase the gift. Groups of elements of the webpage may be compared toa database of webpage elements as provided by participating websites.The comparison is made to find a match and therefore determine howenhanced functionality server 100 may communicate a purchasetransaction, and other events, to the participating website. Otherwise,elements of the webpage may be interpreted by a linguistics algorithm todetermine how to communicate a purchase transaction, or other events, tothe website.

[0059] 14. Sending the modified purchase command to the vendor.

[0060] The original purchase request, as intercepted by enhancedfunctionality server, is passed on to the gift's retailer. Theretailer's own sequence of purchase forms finishes the purchasetransaction for the user in the normal fashion. The gift's purchasestatus within the gift-recipient's account is appropriately updated toinform future gift-givers and to avoid duplicate purchases for the samegift.

EXAMPLE 2

[0061] The method of the present invention may be applied to allow usersbrowse multiple retailers and automatically submit credit card purchasesto retailers, thereby increasing convenience for the user. In thisexample, the user may select a “Purchase this product” option from thetoolbox, much the same way it is explained how users select “Registerthis gift”. The product's webpage may be analyzed, and then the user'scredit card and contact information automatically submitted to theretailer as a purchase request to complete the transaction in oneautomated step.

EXAMPLE 3

[0062] The method of the present invention may be used to devise amulti-retailer shopping cart, whereby the user can accumulate multipleproducts from independent retailers within a single virtual shoppingcart. The user may select a “Purchase all products” within the toolboxto submit their credit card and contact information to all theretailers, for all the products within their shopping cart, all at once.Purchasing multiple products from multiple retailers all at oncesignificantly increases convenience for the user.

EXAMPLE 4

[0063] The method of the present invention may be used to analyze theshopping behavior of the user, thereby recording valuable marketinginformation. In this example, detailed information about each page theconsumer views may be analyzed, categorized, and stored as data used formarketing purposes in predicting future or related consumer behaviors,and for targeted advertising.

EXAMPLE 5

[0064] The method of the present invention may be used to create avirtual shopping agent to automate repetitive shopping tasks as learnedby analyzing the user's shopping habits. For example, the process ofvisiting their favorite retailers and looking for similar types ofproducts can be automated for the user. Automated shopping agents maygather information on the user's favorite product sets and retailers,may retrieve, analyze and store product webpages within the user'saccount, and may notify the user when prices or product availabilitychanges. The user benefits from increased convenience via automated andpersonalized shopping.

EXAMPLE 6

[0065] The method of the present invention may be used to create avirtual network of retailer websites (or websites in general) withenhanced consumer services across an aggregated collection of retailers.For example, the basic utility of parsing and modifying webpages acrossmultiple retailers allows for groups of retailer shops to be connectedto each other via links within toolbox 150. Such interconnectionsbetween retailers allows for special inter-retailer promotions, andproduct cross selling. Purchase events within retailer A's site maytrigger suggestive selling for retailer B's complementary products,whereby retailer A benefits from commissions on retailer B's sales, andretailer B benefits from increased sales volumes.

[0066] The foregoing description of the invention has been presented forpurposes of illustration and description. It is not intended to beexhaustive or to limit the invention to the precise forms disclosed.Many modifications and variations will be apparent. It is intended thatthe scope of the invention be defined by the following claims and theirequivalents.

What is claimed is:
 1. A computer implemented method for providingenhanced functionality to product webpages, the method comprising:receiving a request for a product webpage from a user, the productwebpage being associated with a product and an independent vendor;retrieving the product webpage from an independent source; extracting alocation and structural information associated with the product webpage;modifying the product webpage to provide a toolbar, the toolbar havingat least one command associated with the product; and presenting themodified product webpage to the user.
 2. The method of claim 1, whereinextracting includes: parsing the product webpage into webpage elements;analyzing the webpage elements to identify location and structuralinformation; and storing the location and the structural information. 3.The method of claim 1, wherein the toolbar is provided in a spaceinserted at a top of the product webpage.
 4. The method of claim 1,wherein the toolbar is provided in a separate frame.
 5. The method ofclaim 4, wherein the separate frame is a floating window.
 6. The methodof claim 1, wherein the webpage is written in a markup language.
 7. Themethod of claim 6, wherein the markup language is HTML.
 8. The method ofclaim 7, wherein extracting includes: parsing the product webpageaccording to HTML tags; analyzing the HTML tags and accompanying text toidentify URL and frameset information; and storing the URL and theframeset information.
 9. The method of claim 7, wherein modifyingincludes: inserting a toolbar after the <BODY> marker of the productwebpage.
 10. The method of claim 1, further comprising: obtaininginformation about the user; and storing the information about the userin an account associated with the user.
 11. The method of claim 10,wherein the information about the user includes a name, an address, anda phone number associated with the user.
 12. The method of claim 10,wherein the information about the user includes credit card and paymentinformation associated with the user.
 13. The method of claim 10,wherein the information about the user includes personal preferencesassociated with the user.
 14. The method of claim 10, wherein theinformation about the user includes demographic information associatedwith the user.
 15. The method of claim 10, further comprising: receivinga product registration command associated with the product from theuser; adding the product to a list of products in the account associatedwith the user; and adding a location and structural informationassociated with the product webpage in the account associated with theuser.
 16. The method of claim 1, further comprising: adding informationassociated with the product to the account associated with the user. 17.The method of claim 15, further comprising: obtaining information abouta purchaser; receiving a purchase command associated with the productfrom the purchaser; modifying the purchase command with the informationabout the purchaser; and sending the modified purchase command to thevendor.
 18. The method of claim 17, wherein modifying includes:identifying the product webpage; retrieving instructions associated withcompletion of the command and the product; retrieving the informationassociated with the user; completing the command by using theinstructions and the information associated with the user for theproduct webpage.
 19. The method of claim 18, wherein identifyingincludes: extracting a location and structural information associatedwith the product webpage; and comparing the location and structuralinformation with a database of known database of profiles.
 20. Themethod of claim 1, further comprising: receiving a subsequent requestfor the product webpage; reconstructing the product webpage using thelocation and the structural information associated with the productwebpage; and presenting the reconstructed product webpage.
 21. Acomputer implemented method for providing enhanced functionality toproduct webpages, the method comprising: receiving a request for aproduct webpage from a user, the product webpage being associated with aproduct and an independent vendor; retrieving the product webpage froman independent source associated with the vendor; extracting a locationand structural information associated with the product webpage;modifying the product webpage to provide a toolbar, the toolbar havingat least one command associated with the product; presenting themodified product webpage to the user; receiving a subsequent request forthe product webpage; reconstructing the product webpage using thelocation and the structural information associated with the productwebpage; presenting the product webpage to the user.
 22. The method ofclaim 21, wherein extracting includes: parsing the product webpage intowebpage elements; analyzing the webpage elements to identify locationand structural information; and storing the location and the structuralinformation.
 23. The method of claim 21, wherein the toolbar is providedin a space inserted at a top of the product webpage.
 24. The method ofclaim 21, wherein the toolbar is provided in a separate frame.
 25. Themethod of claim 24, wherein the separate frame is a floating window. 26.The method of claim 21, wherein the webpage is written in a markuplanguage.
 27. The method of claim 26, wherein the markup language isHTML.
 28. The method of claim 27, wherein extracting includes: parsingthe product webpage according to HTML tags; analyzing the HTML tags andaccompanying text to identify URL and frameset information; and storingthe URL and the frameset information.
 29. The method of claim 27,wherein modifying includes: inserting a toolbar after the <BODY> markerof the product webpage.
 30. The method of claim 21, further comprising:obtaining information about the user; and storing the information aboutthe user in an account associated with the user.
 31. The method of claim30, wherein the information about the user includes a name, an address,and a phone number associated with the user.
 32. The method of claim 30,wherein the information about the user includes credit card and paymentinformation associated with the user.
 33. The method of claim 30,wherein the information about the user includes personal preferencesassociated with the user.
 34. The method of claim 30, wherein theinformation about the user includes demographic information associatedwith the user.
 35. The method of claim 30, further comprising: receivinga product registration command associated with the product from theuser; adding the product to a list of products in the account associatedwith the user; and adding a location and structural informationassociated with the product webpage in the account associated with theuser.
 36. The method of claim 21, further comprising: adding informationassociated with the product to the account associated with the user. 37.The method of claim 35, further comprising: obtaining information abouta purchaser; receiving a purchase command associated with the productfrom the purchaser; modifying the purchase command with the informationabout the purchaser; and sending the modified purchase command to thevendor.
 38. The method of claim 37, wherein modifying includes:identifying the product webpage; retrieving instructions associated withcompletion of the command and the product; retrieving the informationassociated with the user; completing the command by using theinstructions and the information associated with the user for theproduct webpage.
 39. The method of claim 38, wherein identifyingincludes: extracting a location and structural information associatedwith the product webpage; and comparing the location and structuralinformation with a database of known database of profiles.
 40. Themethod of claim 21, further comprising: receiving a subsequent requestfor the product webpage; reconstructing the product webpage using thelocation and the structural information associated with the productwebpage; and presenting the reconstructed product webpage.
 41. Acomputer implemented method for providing enhanced functionality toproduct webpages, the method comprising: presenting a list of vendorwebpages to a user, the vendor webpages being associated with aplurality of vendors; receiving a request for a particular vendorwebpage from the user, the particular vendor webpage being associatedwith a particular vendor; presenting a list of product webpages to theuser, the product webpages being associated with a plurality ofproducts, the plurality of products being associated with the particularvendor; receiving a request for a particular product webpage, theparticular product webpage being associated with a particular product;retrieving the particular product webpage; obtaining a location andstructural information associated with the particular product webpage;modifying the particular product webpage to provide a toolbar, thetoolbar having at least one command associated with the particularproduct; presenting the modified particular product webpage to the user;receiving the command associated with the particular product from theuser; and storing information about the particular product in a list ofproducts associated with the user.
 42. The method of claim 41, whereinextracting includes: parsing the product webpage into webpage elements;analyzing the webpage elements to identify location and structuralinformation; and storing the location and the structural information.43. The method of claim 41, wherein the toolbar is provided in a spaceinserted at a top of the product webpage.
 44. The method of claim 41,wherein the toolbar is provided in a separate frame.
 45. The method ofclaim 44, wherein the separate frame is a floating window.
 46. Themethod of claim 41, wherein the webpage is written in a markup language.47. The method of claim 46, wherein the markup language is HTML.
 48. Themethod of claim 47, wherein extracting includes: parsing the productwebpage according to HTML tags; analyzing the HTML tags and accompanyingtext to identify URL and frameset information; and storing the URL andthe frameset information.
 49. The method of claim 47, wherein modifyingincludes: inserting a toolbar after the <BODY> marker of the productwebpage.
 50. The method of claim 41, further comprising: obtaininginformation about the user; and storing the information about the userin an account associated with the user.
 51. The method of claim 50,wherein the information about the user includes a name, an address, anda phone number associated with the user.
 52. The method of claim 50,wherein the information about the user includes credit card and paymentinformation associated with the user.
 53. The method of claim 50,wherein the information about the user includes personal preferencesassociated with the user.
 54. The method of claim 50, wherein theinformation about the user includes demographic information associatedwith the user.
 55. The method of claim 41, wherein the command is aproduct registration command.
 56. The method of claim 41, wherein thecommand is a product purchase command.
 57. The method of claim 56,further comprising: obtaining information about a purchaser; receiving apurchase command associated with the product from the purchaser;modifying the purchase command with the information about the purchaser;and sending the modified purchase command to the vendor.
 58. The methodof claim 57, wherein modifying includes: identifying the productwebpage; retrieving instructions associated with completion of thecommand and the product; retrieving the information associated with theuser; completing the command by using the instructions and theinformation associated with the user for the product webpage.
 59. Themethod of claim 58, wherein identifying includes: extracting a locationand structural information associated with the product webpage; andcomparing the location and structural information with a database ofknown database of profiles.
 60. The method of claim 41, furthercomprising: receiving a subsequent request for the product webpage;reconstructing the product webpage using the location and the structuralinformation associated with the product webpage; and presenting thereconstructed product webpage.